home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Network Supervisor's Toolkit
/
Network Supervisor's Toolkit.iso
/
tools
/
lu62
/
port
/
virt.h
< prev
next >
Wrap
C/C++ Source or Header
|
1996-07-10
|
3KB
|
116 lines
/* k 0209 07/09/91 *//* to shorten loop & del restoredos */
/* k 0213 08/09/91 *//* escape */
/* k 0214 14/09/91 *//* escape */
/* k 0215 14/09/91 *//* return if pvtcom==-1 */
/* k 0224 23/09/91 *//* ebss */
/* k 0233 12/10/91 *//* Trn modules */
/* k 0269 18/11/91 *//* On-line exit */
/* @0312 - 4/03/92 - Parallel Foreground 2th Algorithm */
/* @0313 - 11/03/92 - int28h call */
#include <ebss.h> /* @0224 */
/*#define DEBUG*/
#include <stdarg.h>
#include <stdlib.h>
#include <ctype.h>
#if (OS_TYPE==0)
#include <dir.h>
#include <process.h>
#include <io.h>
#endif
#include <stdio.h>
#include <string.h>
#include <fcntl.h>
#include <pconio.h>
#include "emadapt.h"
#if (OVL_TYPE==1) /* @0233 */
extern void Trn_handler(); /* @0233 */
#endif /* @0233 */
#if defined(DEBUG)
dosimit(short in)
{}
router ( ) {
int key,lo,hi,input,inp;
do {
for (key=0;key<3;key++) /* @0209 */
{int y=0;
y++;
y--;};/*ºáñÑ᪬á - timer tick imitation */
my_1ch ( ); /* TEMPORARY */
if (kbhit ( ) ) {
key = bioskey(0);
lo = key & 0X00FF;
hi=(key & 0XFF00) >> 8;
input=(lo==0) ? hi+256:lo;
inp=hot_key(input); /* @0215 */
if (!(vt_flag & VT_MODE) && (inp <= 0 ))
dosimit (input);
else {
/* @0209 */
if ((vt_flag & VT_MODE) && (vt_flag & VT_IO) && (inp==0))
handler (input);
else
pvtcom (input); /* @0209 */
}
} /*kbhit*/
} while (lo!=26);
}
#else
router (key)
int key;
{
int input;
short rt,lo,hi; /* @0269 @0312 */
lo = key & 0X00FF; /*@0312 */
hi=(key & 0XFF00) >> 8; /*@0312 */
key = ((lo == 0) ? hi + 256 : lo); /*@0312 */
#define FG_OPT 4 /* ;@0309 @0312 */
if (!(optflg & FG_OPT)) { /* @0312 */
if (pvtcom (key)==-1) return -1; /* @0215 *//* @0269 */
while (1)
{
while (!bioskey(1)) call28 (); /* &0313 */
input=getkey ( );
if ((vt_flag & VT_MODE) && (vt_flag & VT_IO) && (!hot_key (input))) {
#if (OVL_TYPE==1) /* @0233 */
Trn_handler (input); /* @0233 */
#else /* @0233 */
handler ( input ); /* @0233 */
#endif /* @0233 */
} else
if ((rt=pvtcom (input))<0) /* @0209 *//* @0269 */
break; /* @0209 */
}
} else { /* @0312 */
if ((vt_flag & VT_MODE) && (vt_flag & VT_IO) && (!hot_key (key))) { /* @0312 */
#if (OVL_TYPE==1) /* @0233 */ /* @0312 */
Trn_handler (key); /* @0233 */ /* @0312 */
#else /* @0233 */ /* @0312 */
handler (key ); /* @0233 */ /* @0312 */
#endif /* @0233 */
rt=0; /* @0312 */
} else /* @0312 */
rt=pvtcom (key);/* @0312 */
} /* @0312 */
return rt; /* @0269 */
}
#endif
int hot_key (in)
int in;
{
if ((in>=CTRLF1)&&(in<=CTRLF10)) return (1+in-CTRLF1);
if (in==ALTX) return -1;
return 0;
}
/*
put_in_video (unsigned x, unsigned y, char l) {
char far *a=MK_FP (vissegment,y*160+x*2-162);
*a=l;
} */